package com.itheima.common.core.model;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * 分页结果返回类
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class PageResult implements Serializable {
    //总条数
    private Integer total;
    //当前页数
    private Integer pageNum;
    //页大小
    private Integer pageSize;
    //总页数
    private Integer totalPage;

    private List list;

    /**
     *
     * @param total 总记录数
     * @param pageSize 每页显示条数
     * @param pageNum // 当前页
     * @param data // 数据
     * @return
     */
    public static PageResult init(Integer total, Integer pageSize, Integer pageNum, List data){
        Integer totalPage = total % pageSize == 0 ? total/pageSize : total/pageSize + 1;
        return new PageResult(total, pageNum, pageSize, totalPage, data);
    }
}
